package cn.zhangzhan.word.service.service.impl;

import cn.zhangzhan.word.model.domain.template.AreaCode;
import cn.zhangzhan.word.service.mapper.template.AreaCodeMapper;
import cn.zhangzhan.word.service.service.AreaCodeService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import javax.annotation.Resource;
import java.util.List;


/**
 * 蚂蚁金服地区码Service业务层处理
 *
 * @author zhangzhan
 * @date 2024-10-30
 */
@Service("areaCodeServiceService")
public class AreaCodeServiceImpl extends ServiceImpl<AreaCodeMapper, AreaCode> implements AreaCodeService {
    @Resource
    private AreaCodeMapper areaCodeMapper;

    /**
     * 查询蚂蚁金服地区码
     *
     * @param id 蚂蚁金服地区码主键
     * @return 蚂蚁金服地区码
     * @author zhangzhan
     * @date 2024-10-30
     */
    @Override
    public AreaCode selectAreaCodeById(Long id) {
        return areaCodeMapper.selectAreaCodeById(id);
    }

    /**
     * 查询蚂蚁金服地区码列表
     *
     * @param areaCode 蚂蚁金服地区码
     * @return 蚂蚁金服地区码
     * @author zhangzhan
     * @date 2024-10-30
     */
    @Override
    public List<AreaCode> selectAreaCodeList(AreaCode areaCode) {
        return areaCodeMapper.selectAreaCodeList(areaCode);
    }

    /**
     * 新增蚂蚁金服地区码
     *
     * @param areaCode 蚂蚁金服地区码
     * @return 结果
     * @author zhangzhan
     * @date 2024-10-30
     */
    @Override
    public int insertAreaCode(AreaCode areaCode)
    {
        return areaCodeMapper.insert(areaCode);
    }

    /**
     * 修改蚂蚁金服地区码
     *
     * @param areaCode 蚂蚁金服地区码
     * @return 结果
     * @author zhangzhan
     * @date 2024-10-30
     */
    @Override
    @Transactional
    public int updateAreaCode(AreaCode areaCode) {
        return areaCodeMapper.updateById(areaCode);
    }

    /**
     * 批量删除蚂蚁金服地区码
     *
     * @param ids 需要删除的蚂蚁金服地区码主键
     * @return 结果
     * @author zhangzhan
     * @date 2024-10-30
     */
    @Override
    public int deleteAreaCodeByIds(Long[] ids) {
        return areaCodeMapper.deleteAreaCodeByIds(ids);
    }

    /**
     * 删除蚂蚁金服地区码信息
     *
     * @param id 蚂蚁金服地区码主键
     * @return 结果
     * @author zhangzhan
     * @date 2024-10-30
     */
    @Override
    public int deleteAreaCodeById(Long id) {
        return areaCodeMapper.deleteAreaCodeById(id);
    }
}
